package com.derbysoft.synxisadapter.webservice;

import com.derbysoft.synxisadapter.commons.dto.synxis.OtaRequestMessage;
import com.derbysoft.synxisadapter.commons.dto.synxis.OtaResponseMessage;
import com.derbysoft.synxisadapter.commons.model.Channel;
import com.derbysoft.synxisadapter.webservice.impl.ResponsePair;

import java.util.List;

/**
 * User: jason
 * Date: 2012-11-28
 */
public interface SynXisWebService<RQ extends OtaRequestMessage, RS extends OtaResponseMessage> {
    RS invoke(RQ request, Channel channel) throws Exception;

    List<ResponsePair<RQ, RS>> batchInvoke(List<RQ> requests, Channel channel) throws Exception;
}
